package com.yfp.client.mapper;

import com.yfp.client.domain.ShoppingCarts;
import com.yfp.client.domain.dto.ShoppingCartsDto;
import com.yfp.client.domain.vo.ShoppingCartsVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 *
 * @description 针对表【shopping_carts(购物车表)】的数据库操作Mapper
 * @createDate 2024-05-24 17:20:15
 * @Entity com.yfp.domain.com.yfp.client.ShoppingCarts
 */
@Mapper
public interface ShoppingCartsMapper {

    /**
     * 新增购物车
     *
     * @param shoppingCarts 购物车表
     */
    void insert(ShoppingCarts shoppingCarts);

    /**
     * 查询购物车
     *
     * @param clientId  用户id
     * @param machineId 设备id
     * @return 购物车列表
     */
    List<ShoppingCartsVo> findClientShoppingCarts(@Param("clientId") String clientId, @Param("machineId") Long machineId);

    /**
     * 修改购物车
     *
     * @param shoppingCartsDto 购物车传输对象
     */
    void updateShoppingCarts(ShoppingCartsDto shoppingCartsDto);

    /**
     * 删除购物车
     *
     * @param idList 主键id集合
     */
    void deleteShoppingCartsByIds(Long[] idList);

    /**
     * 删除购物车
     *
     * @param clientId  用户id
     * @param machineId 设备id
     */
    void deleteByUserIdAndMachineId(@Param("clientId") String clientId, @Param("machineId") String machineId);

    /**
     * 删除购物车
     *
     * @param id 主键id
     */
    void deleteShoppingCartsById(Long id);
}




